/* ****************************************************************** **
**    OpenSees - Open System for Earthquake Engineering Simulation    **
**          Pacific Earthquake Engineering Research Center            **
**                                                                    **
**                                                                    **
** (C) Copyright 1999, The Regents of the University of California    **
** All Rights Reserved.                                               **
**                                                                    **
** Commercial use of this program without express permission of the   **
** University of California, Berkeley, is strictly prohibited.  See   **
** file 'COPYRIGHT'  in main directory for information on usage and   **
** redistribution,  and for a DISCLAIMER OF ALL WARRANTIES.           **
**                                                                    **
** Developed by:                                                      **
**   Frank McKenna (fmckenna@ce.berkeley.edu)                         **
**   Gregory L. Fenves (fenves@ce.berkeley.edu)                       **
**   Filip C. Filippou (filippou@ce.berkeley.edu)                     **
**                                                                    **
** ****************************************************************** */

// Written: User-defined implementation for UDP commands
// Purpose: This file contains the registration functions for UDP related Tcl commands.

#include <tcl.h>
#include <TclModelBuilder.h>
#include <stdlib.h>
#include <string.h>
#include <OPS_Globals.h>

// Function declarations from other files
extern int TclCommand_addUDP_LoadPattern(ClientData clientData, Tcl_Interp* interp, int argc, TCL_Char** argv);
extern int TclCommand_addUDP_Recorder(ClientData clientData, Tcl_Interp* interp, int argc, TCL_Char** argv);

// Function to register all UDP commands
int
Tcl_AddUDP_Commands(Tcl_Interp* interp)
{
	// Register UDP commands for hybrid simulation
	Tcl_CreateCommand(interp, "udpPattern", TclCommand_addUDP_LoadPattern,
		(ClientData)NULL, (Tcl_CmdDeleteProc*)NULL);

	Tcl_CreateCommand(interp, "udpRecorder", TclCommand_addUDP_Recorder,
		(ClientData)NULL, (Tcl_CmdDeleteProc*)NULL);

	return TCL_OK;
}